package com.sub.lambda;

import java.util.function.Function;

/**
 * @ClassName FunctionInterfaceDemo
 * @Description: TODO
 * @Author Submerge.
 * @Since 2023/8/30 18:26
 * @Version 1.0
 */

public class FunctionInterfaceDemo {
    public static void main(String[] args) {


        /**
         * 练习描述
         * String s = "林青霞,30";
         * 请按照我指定的要求进行操作：
         * 1:将字符串截取得到数字年龄部分
         * 2:将上一步的年龄字符串转换成为int类型的数据
         * 3:将上一步的int数据加70，得到一个int结果，在控制台输出
         * 请通过Function接口来实现函数拼接
         */

        Function<String,Integer> fun1= new Function<String, Integer>() {
            @Override
            public Integer apply(String s) {
                return Integer.parseInt(s.split(",")[1]);
            }
        };

        Function<Integer,Integer> fun2 = new Function<Integer, Integer>() {
            @Override
            public Integer apply(Integer integer) {
                return integer+70;
            }
        };

        Integer result = fun1.andThen(fun2).apply("苏兵,24");
        System.out.println(result);

    }

}
